Conventionally, generation of a gait (desired gait) for causing a legged mobile robot, for example, a two-legged mobile robot to move has primarily been aimed to generate a gait (walking gait) which causes the robot to perform a smooth walking action. However, in recent years, as the development of the legged mobile robot has been advanced, it is desired to generate a gait that can cause the robot not only to walk but also run. Moreover, it is desired to generate a gait that can move the robot without difficulties even on a slippery floor (so-called low-mu road) on which a sufficient friction force cannot be generated.
Note that, since the word “gait” in Chinese characters includes a Chinese character meaning “walk”, the word tends to be misunderstood as meaning only walking. However, originally, the word “gait” has a concept that also includes “running” as evidenced by the fact that it is used as a word for “trotting” or a running mode of a horse.
Here, a difference between characteristics of walking and running will be described.
It is a general practice to define a moving mode, in which there is an instance when all the legs are in the air simultaneously, as running. However, walking and running are not always distinguished clearly by this definition. For example, whereas, in fast jogging, most people find an instance when all the legs are in the air, in slow jogging, relatively large number of people find one of the legs is always in contact with the ground. It is slightly unreasonable perceptually to define that, while fast jogging is running, slow jogging is walking.
FIG. 48 shows a pattern of a body vertical position and a floor reaction force's vertical component (a sum of floor reaction force's vertical components acting on both the left and right legs) in typical running. FIG. 49 shows a pattern of a body vertical position and a floor reaction force's vertical component in typical walking.
Note that a body vertical position/velocity means a vertical position of a body representative point and a velocity thereof. A body horizontal position/velocity means a horizontal position of the body representative point and a velocity thereof. The body vertical position/velocity and the body horizontal position/velocity are collectively referred to as a body position velocity.
In addition, a “floor reaction force's vertical component” should be more precisely described as a “vertical component of the translation floor reaction force” in order to distinguish it from a moment component around a vertical axis of a floor reaction force. However, since the word is lengthy, “translation” is omitted here.
First, considering a movement of a body, during walking, the body is at the highest position at an instance when the body passes over a supporting leg and, during running, the body is at the lowest position at this instance. That is, a phase of a vertical motion pattern of the body is inversed during walking and running.
On the other hand, the floor reaction force is relatively constant during walking, while it fluctuates significantly and reaches the maximum at an instance when the body passes over the supporting leg during running. In addition, naturally, the floor reaction force is 0 at an instance when all the legs are in the air simultaneously. More specifically observed, during running, a floor reaction force of a magnitude generally proportional to an amount of drawing-in of the supporting leg is generated. In other words, during running, it can be said that a person is moving while using legs like springs to jump.
Slow jogging has the same phase of a body vertical movement as the typical running. In addition, in slow jogging, although there is almost no instance when all the legs are in the air simultaneously, even in that case, a floor reaction force is substantially 0, although not completely 0, at an instance when a supporting leg and a free leg are switched.
Therefore, it could be more appropriate to distinguish walking and running from the above-described characteristics of the patterns of a vertical movement of the body and the floor reaction force as described above because slow jogging is regarded as running, which coincides with perception.
In particular, if running and walking are distinguished in a most characteristic point, it could be said that running is a moving mode in which a floor reaction force is 0 or substantially 0 at an instance when a supporting leg is switched, and waling is the other moving modes (in which a floor reaction force's vertical component is relatively constant).
On the other hand, in Japanese Patent Application No. 2000-352011, the applicant previously proposed a technique for generating a gait including a floor reaction force of a legged mobile robot freely and on a real time basis while satisfying a dynamical equilibrium condition (which means a condition for balance among a gravity, an inertial force, and a floor reaction force of a desired gait; in the narrow sense, a moment produced about a desired ZMP by a resultant force of gravity and the inertial force produced by the movement of the desired gait becomes 0; details will be described later.) This technique and a series of control devices for a legged mobile robot, which the application proposed in Japanese Patent Application Laid-Open No. 10-86081, Japanese Patent Application Laid-Open No. 10-277969, and the like, can be applied not only to walking but also to running.
However, in these techniques, a magnitude of a floor reaction force's horizontal component of a desired gait (although, more strictly, this should be described as a “translation floor reaction force's horizontal component” in order to distinguish it from a moment component about a horizontal axis of a floor reaction force, “translation” is omitted as in the “floor reaction force's vertical component”) is not taken into account. Therefore, it is likely that the floor reaction force's horizontal component of the desired gait becomes excessive to exceed a limit of friction to cause slippage.
More specifically, in an embodiment of Japanese Patent Application No. 2000-352011, the body horizontal acceleration in the desired gait is adjusted in such a manner that the moment produced about the original desired ZMP by the resultant force of gravity and the inertial force becomes 0 or substantially 0. As a result, a total center-of-gravity horizontal acceleration is determined accordingly, and a floor reaction force's horizontal component, which is in balance with this, is also determined accordingly. In this case, if the robot walks on a floor surface having a high friction coefficient (in this case, at least one leg is always in contact with the ground), since the floor reaction force's vertical component is always substantially equivalent to a weight of the robot, the limit of the friction force (i.e., floor reaction force's horizontal component) is high. Consequently, it is less likely that slippage occurs even if a gait is generated by adjusting the body horizontal acceleration as described above.
However, during running, the floor reaction force's vertical component may be reduced to substantially 0. At that point, even if a friction coefficient is high, a limit of the floor friction force or the floor reaction force's horizontal component (more specifically, the translation floor reaction force's horizontal component) is reduced to substantially 0. Therefore, if the body horizontal acceleration of the desired gait is adjusted as described above, it is likely that the floor reaction force's horizontal component of the desired gait exceeds the limit, and the robot slips to fall.
In addition, in the case of walking, again, if a friction coefficient of a floor is low, it is likely that the robot slips to fall.
Moreover, during running, in many cases, the floor reaction force's vertical component sometimes becomes 0. When this occurs, the friction force (the floor reaction force's horizontal component) also becomes 0, so that the total center-of-gravity horizontal acceleration is naturally 0 (uniform movement). Therefore, since the body horizontal acceleration of the desired gait cannot be adjusted, in the embodiment of Japanese Patent Application No. 2000-352011, the moment produced about the original desired ZMP by the resultant force of gravity and the inertial force cannot be brought to 0 either. That is, the dynamical equilibrium condition cannot be satisfied during running.
Therefore, it is an object of the present invention to provide a gait generation device that can generate a more preferable gait regardless of gait modes such as walking and running and a friction state of a floor surface.
More specifically, it is an object of the present invention to provide a gait generation device that can generate a gait, which is capable of preventing slippage and fall due to the slippage, taking into account a limit of a friction force or a floor reaction force's horizontal component. Further, it is another object of the present invention to provide a gait generation device that can generate a motion pattern of a gait satisfying a dynamical equilibrium condition even when a leg is in the air or when a limit of a friction force or a floor reaction force's horizontal component is very low.